<?php
/**
 * Created by PhpStorm.
 * User: dolia
 * Date: 15/12/3
 * Time: 下午4:46
 */

namespace App\Interfaces;

interface AddressService
{


    /**
     * 获取用户收货地址
     * @param int $user_id      用户id
     * @return mixed  包含: 1.用户所有的收货地址
     */
    public function getAddressInfo($user_id);

    /**
     * 获取用户所有收货地址
     * @param int $user_id      用户id
     * @return mixed  包含: 1.用户所有的收货地址
     */
    public function getUserAddress($user_id);

    /**
     * 根据收货地址id获取用户收货地址
     * @param int $address_id      收货地址id
     * @return mixed  包含: 1.用户的单个收货地址
     */
    public function getAddress($address_id);

    /**
     * 增加收货地址
     * @param int $user_id      用户id
     * @param array $addressArr   收货地址信息数组
     * @return mixed
     */
    public function addAddress($user_id, Array $addressArr);


    /**
     * 删除收货地址
     * @param int $address_id     收货地址id
     * @param array $addressArr   要删除的收货地址信息数组
     * @return mixed
     */
    public function removeAddress($address_id);


    /**
     * 修改收货地址
     * @param int $address_id     收货地址id
     * @param array $addressArr   要修改的收货地址信息数组
     * @return mixed
     */
    public function updateAddress($address_id, Array $addressArr);

    /**
     * 获取用户默认地址
     * @param int $user_id     用户id
     * @return mixed
     */
    public function getUserDefaultAddress($user_id);



}//end class AddressService